from datetime import datetime


def days_between_dates(date1, date2):
    """
    计算两个日期之间相差的天数。

    参数:
    date1 (str): 第一个日期，格式为 'YYYY-MM-DD'
    date2 (str): 第二个日期，格式为 'YYYY-MM-DD'

    返回:
    int: 两个日期之间的天数差值（可以是负数，表示date1在date2之前）
    """
    date_format = '%Y-%m-%d'
    dt1 = datetime.strptime(date1, date_format)
    dt2 = datetime.strptime(date2, date_format)
    delta = dt2 - dt1
    return delta.days


def milliseconds_between_dates(date1, date2, date_format='%Y-%m-%d %H:%M:%S'):
    """
    计算两个日期之间相差的毫秒数。

    参数:
    date1 (str): 第一个日期，格式为 'YYYY-MM-DD HH:MM:SS'
    date2 (str): 第二个日期，格式为 'YYYY-MM-DD HH:MM:SS'
    date_format (str): 日期字符串的格式，默认为 'YYYY-MM-DD HH:MM:SS'

    返回:
    int: 两个日期之间的毫秒差值（可以是负数，表示date1在date2之前）
    """
    dt1 = datetime.strptime(date1, date_format)
    dt2 = datetime.strptime(date2, date_format)
    delta = dt2 - dt1
    return int(delta.total_seconds() * 1000)


# 示例用法
date1 = '2024-07-01'
date2 = '2024-07-10'
difference = days_between_dates(date1, date2)
print(f"日期 '{date1}' 和 '{date2}' 之间相差 {difference} 天。")

date1 = '2024-07-01 12:00:00'
date2 = '2024-07-10 12:00:00'
milliseconds_difference = milliseconds_between_dates(date1, date2)
print(f"日期 '{date1}' 和 '{date2}' 之间相差 {milliseconds_difference} 毫秒。")
